-
Notifications
You must be signed in to change notification settings - Fork 557
Maintain compatibility with CPython 3.13 #1242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
@daskol You need to edit the files that use asyncore (Removed in python 3.13) to make it use asyncio
Maybe be you could edit the files to use asyncore or asyncio by case (python>=3.13 or not) |
@daskol and even after I edit for some reason I can't import the cassandra.io.libevwrapper |
@medaminezghal What about |
@daskol if you build the package without the C extensions it should work (of course after editing the files that use asyncore) and then you can build cqlsh in python 3.13 |
@daskol you can replace any code that use asyncore with asyncio safely https://docs.python.org/3/library/asyncore.html |
Do |
I think it’s not useful to use unmaintained package as provided in the description. So it’s better to use asyncio |
@daskol I think you need to fix the problem related to this issue from other project. |
Thanks for the PR @daskol! Have you signed the Contributor License Agreement for contributions to DataStax open source projects? If not you can find it at https://cla.datastax.com/. Thanks! I mentioned this in another recently submitted PR but it's worth restating here: because the Python driver aims to support all Python runtimes that aren't end-of-life we still have to support Python 3.9.x and up. And since the asyncore reactor is more stable than the current asyncio version I have no plans to remove it anytime soon. There's a lot more detail in my comment. For the record: if you want to use the libev reactor you'll need libev installed and accessible via the lib path before the Python driver will even attempt to use it. You can find some additional info in our docs on installing the Python driver. |
@absurdfarce Yes, I signed agreement as soon as you posted this requirement in #1244.
This PR exactly improves support for CPython 3.9+. |
See changes in Python C API in CPython 3.13 changelog. Initial discussion is in AUR.